nanopyx.core.transform.image_cart
Combination of functions for shifting an image, using several interpolation methods.
1""" 2Combination of functions for shifting an image, using several interpolation methods. 3""" 4 5import numpy as np 6 7from ..utils.timeit import timeit2 8from . import interpolation_bicubic 9from . import interpolation_bilinear 10from . import interpolation_nearest_neighbor 11from . import interpolation_catmull_rom 12from . import interpolation_lanczos 13 14@timeit2 15def catmull_rom_cart(image: np.ndarray, x_shape: int, y_shape: int, scale:str='linear'): 16 interpolator = interpolation_catmull_rom.Interpolator(image) 17 return interpolator.cartesian(x_shape,y_shape,scale) 18 19 20@timeit2 21def lanczos_cart(image: np.ndarray, x_shape: int, y_shape: int, scale:str='linear'): 22 interpolator = interpolation_lanczos.Interpolator(image) 23 return interpolator.cartesian(x_shape,y_shape,scale) 24 25 26@timeit2 27def bicubic_cart(image: np.ndarray, x_shape: int, y_shape: int, scale:str='linear'): 28 interpolator = interpolation_bicubic.Interpolator(image) 29 return interpolator.cartesian(x_shape,y_shape,scale) 30 31 32@timeit2 33def bilinear_cart(image: np.ndarray, x_shape: int, y_shape: int, scale:str='linear'): 34 interpolator = interpolation_bilinear.Interpolator(image) 35 return interpolator.cartesian(x_shape,y_shape,scale) 36 37 38@timeit2 39def nearest_neighbor_cart(image: np.ndarray, x_shape: int, y_shape: int, scale:str='linear'): 40 interpolator = interpolation_nearest_neighbor.Interpolator(image) 41 return interpolator.cartesian(x_shape,y_shape,scale)